#ifndef _CONTROL_STATE_H
#define _CONTROL_STATE_H

#include "InputManager.h"

class ControlState
{
public:
	ControlState(std::shared_ptr<InputManager> inputManager);
	~ControlState(void);

	bool isKeyDown(unsigned int key, unsigned int player);
	bool isKeyPressed(unsigned int key, unsigned int player);
	bool isKeyReleased(unsigned int key, unsigned int player);

	void setUpdateState(bool value) { _updateInput = value; }
	bool updateInput() { return _updateInput; }

private:
	bool _updateInput;
	std::shared_ptr<InputManager> _inputManager;
};

#endif // _CONTROL_STATE_H